我剛剛為MacOS X安裝了Python 3.6.1 當我嘗試運行控制台(或使用Python3運行任何命令)時,拋出此錯誤: AttributeError:模塊“枚舉”沒有屬性“ IntFlag” $ /庫/框架/Python.framework/版本/3.6/bin/python3 無法導入站點模塊 追溯(最近一次通話):中的文件“ /usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py”,行544 主要() 主文件530行中的文件“ /usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py” known_paths = addusersitepackages(known_paths) addusersitepackages中的文件“ /usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py”,第282行 user_site = getusersitepackages() getusersitepackages中的文件“ /usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py”,第258行 user_base = getuserbase()#這也將設置USER_BASE getuserbase中的文件“ /usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py”,第248行 USER_BASE = get_config_var('用戶庫') get_config_var中的第601行的文件“ /usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/sysconfig.py” 返回get_config_vars()。get(name) get_config_vars中的文件“ /usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/sysconfig.py”,第580行 導入_osx_support <模塊>中第4行的文件“ /usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/_osx_support.py” 匯入 中的文件“ /usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/re.py”,第142行 RegexFlag(enum.IntFlag)類: AttributeError:模塊“枚舉”沒有屬性“ IntFlag” IntFlag類存在於enum.py中。那麼,為什麼會引發AttributeError?
2021-01-02 08:10:27
這是因為您的枚舉不是標準庫枚舉模塊。您可能已經安裝了enum34軟件包。 檢查是否是這種情況的一種方法是檢查屬性enum。__file__ 導入枚舉 打印(枚舉__file__) #標準庫位置應類似於 #/usr/local/lib/python3.6/enum.py 從python 3.6開始,enum34庫不再與標準庫兼容。該庫也是不必要的,因此您可以簡單地將其卸載。 pip卸載-y enum34 如果您需要代碼同時在<= 3.4和> 3.4的python版本上運行,則可以嘗試將enum-compat作為要求。它只為舊版本的python安裝enum34,而沒有標準庫enum。 | 不知道您是否仍然有此問題。我有一個類似的問題,只需取消PYTHONPATH就可以解決 $未設置PYTHONPATH | 對我來說,此錯誤是在安裝gcloud組件app-engine-python以便集成到pycharm後發生的。即使pycharm現在不上傳到app-engine,卸載模塊也有幫助。 | 如果有人在PyCharm中運行Google App Engine Python 3.7標準環境項目時由於遇到此錯誤而來這裡,那麼您要做的就是 確保要運行的配置適用於Flask,而不適用於Google App Engine配置。 然後在偏好設置>>語言和框架>> Google App Engine下禁用Google App Engine支持 原因是根據此鏈接 總體目標是您的應用程序應具有完全可移植性,並可以在任何標準Python環境中運行。您編寫的是標準Python應用程序,而不是App Engine Python應用程序。作為此轉變的一部分,您不再需要為應用程序的核心功能使用專有的App Engine API和服務。目前,Python 3.7運行時中不提供App Engine API。 我猜想當我們在PyCharm中將python 3.7項目創建為Google應用引擎項目時,它仍會嘗試以與python2.7應用相同的方式進行操作 | 免責聲明:請@ juanpa.arrivillaga,如果您看到此答案,請隨時寫自己的答案,我將刪除此帖子。 @ juanpa.arrivillaga上面已經提到: 您的工作目錄中是否有文件名enum.py? 這就是我遇到的問題。當時我還不知道python上的enum模塊,並已將測試文件命名為enum.py。 由於文件名是模塊名,因此存在衝突。有關模塊的更多信息,請參見:https://docs.python.org/2/tutorial/modules.html | 在pycharm首選項中禁用“ Google App Engine支持”對我來說解決了這個問題。 | 安裝enum34的1.1.8版本對我有用。 我可以通過向pyproject.toml添加enum34 =“ == 1.1.8”來解決此問題。 顯然enum34在v1.1.8中具有避免此錯誤的功能,但是 這在v1.1.9 +中已退回。不過,這只是一種解決方法。的 更好的解決方案是使程序包使用環境標記,以便 除非需要,否則根本不需要安裝enum34。 來源:https://github.com/python-poetry/poetry/issues/1122 | HåkenLid的回答幫助解決了我的問題(謝謝!),在我的情況下,在運行於Docker容器中的Flask的Python3.7中(FROM tiangolo / uwsgi-nginx-flask:python3.7-alpine3.7)。 就我而言,enum34是由另一個庫安裝的(pip install smartsheet-python-sdk)。 對於那些遇到類似Docker容器問題的人,這是我的最終Dockerfile(跳至相關行): 來自tiangolo / uwsgi-nginx-flask:python3.7-alpine3.7 ... RUN pip install -r requirements.txt RUN pip卸載-y enum34 ... | 如果必須同時為python2和python3保留PYTHONPATH,則可以編寫別名語句以在bash_profile中設置適當的PYTHONPATH: 在〜/ .bash_profile中,對PYTHONPATH2和PYTHONPATH3變量進行硬編碼,並在其末尾添加以下別名: 別名python ='export PYTHONPATH = $ {PYTHONPATH2}; python' 別名python3 ='export PYTHONPATH = $ {PYTHONPATH3}; python3' 我的python(指python2),因為我更經常使用python2。 | 每當我遇到這個問題時: AttributeError:模塊“枚舉”沒有屬性“ IntFlag” 只需首先運行命令: 未設定PYTHONPATH 然後運行我想要的命令,然後在其中成功。 | 我通過使用pip install--ignore-installed enum34做到了 安裝所需的庫後,請在構建過程中查找警告。 我收到了這樣的錯誤:由於未安裝軟件包'wheel',因此將來使用legacy setup.py安裝會出錯:pyejabberd 0.2.11的要求enum34 == 1.1.2,但您將擁有不兼容的enum34 1.1.10 。 要解決此問題,請運行以下命令:pip Frozen | grep枚舉34。這將為您提供已安裝的enum34的版本。現在通過pip卸載enum34進行卸載,並重新安裝所需的版本,如pip install“ enum34 == 1.1.20” | 如果在PyCharm中運行測試時遇到此問題,請確保未選中第二個框配置。 | 我的計算機上安裝了Python 2和Python 3。出於某些奇怪的原因,當調用re模塊時,我在Python 3的sys.path中也有一個指向Python2的sitepackage庫目錄的路徑。如果我運行Python 3並導入enum和print(enum .__ file__),則係統不會顯示該Python 2站點包路徑。因此,一個非常粗暴和骯髒的技巧是直接修改導入枚舉的模塊(遵循回溯路徑),並在導入枚舉之前插入以下代碼: 導入系統 對於我,枚舉(sys.path)中的p: 如果p.lower()中的“ python27”或p.lower()中的“ python2.7”:sys.path.pop(i) 導入枚舉 那解決了我的問題。 | 即使我在運行python -m grpc_tools.protoc --version時遇到了這個問題 必須設置PYTHONPATH直到站點包並關閉所有命令提示符窗口,然後它才能工作。希望它對gRPC用戶有所幫助。 | 我在使用python3.8和tensorflow 2.2.0的虛擬環境內核中的jupyterlab的ubuntu20.04中遇到了這個問題。錯誤消息原為 追溯(最近一次通話): _run_module_as_main中的文件“ /usr/lib/python2.7/runpy.py”,第174行 “ __main __”,fname,loader,pkg_name) _run_code中的文件“ /usr/lib/python2.7/runpy.py”,第72行 run_globals中的exec代碼 <模塊>中第15行的文件“ /home/hu-mka/.local/lib/python2.7/site-packages/ipykernel_launcher.py” 從ipykernel導入kernelapp作為應用 <模塊>中第2行的文件“ /home/hu-mka/.local/lib/python2.7/site-packages/ipykernel/__init__.py” 來自.connect import * <模塊>中第13行的文件“ /home/hu-mka/.local/lib/python2.7/site-packages/ipykernel/connect.py” 從IPython.core.profiledir導入ProfileDir 中的文件“ /home/hu-mka/.local/lib/python2.7/site-packages/IPython/__init__.py”,第48行 從.core.application導入應用程序 <模塊>中第23行的文件“ /home/hu-mka/.local/lib/python2.7/site-packages/IPython/core/application.py” 從traitlets.config.application導入應用程序,catch_config_error 中第1行的文件“ /home/hu-mka/.local/lib/python2.7/site-packages/traitlets/__init__.py” 從.traitlets導入* 在 中的文件“ /home/hu-mka/.local/lib/python2.7/site-packages/traitlets/traitlets.py”,第49行 導入枚舉 ImportError:沒有名為枚舉的模塊 問題是在/ usr / bin / python中的符號鏈接中指向python2。解: 光盤/ usr / bin / 須藤ln -sf python3 python 希望Python 2的使用將很快完全消失。 | 從HuggingFace安裝變壓器庫時遇到此問題。這是由於在我的環境中安裝了enum34軟件包,它覆蓋了Python中的內置enum。安裝此軟件包的原因可能是為了實現向前兼容性,而Python 3.6+不再需要此軟件包。所以解決方案很簡單, pip卸載-y enum34 | 不幸的是,這些建議都沒有幫助我,但是在進一步搜索之後 點安裝aenum 為我解決了 | 如果有人嘗試從virtualenv運行Jupyter內核時遇到此問題,只需將正確的PYTHONPATH添加到virtualenv內核的kernel.json中(例如Python 3): { “ argv”:[ “ /usr/local/Cellar/python/3.6.5/bin/python3.6”, “ -m”, “ ipykernel_launcher”, “-F”, “ {connection_file}” ], “ display_name”:“ Python 3(TensorFlow)”, “ language”:“ python”, “ env”:{ “ PYTHONPATH”:“ /Users/dimitrijer/git/mlai/.venv/lib/python3.6:/Users/dimitrijer/git/mlai/.venv/lib/python3.6/lib-dynload:/usr/local/地窖/python/3.6.5/Frameworks/Python.framework/Versions/3.6/lib/python3.6:/Users/dimitrijer/git/mlai/.venv/lib/python3.6/site-packages” } } | 你的答案 StackExchange.ifUsing(“ editor”,function(){ StackExchange.using(“ externalEditor”,function(){ StackExchange.using(“ snippets”,function(){ StackExchange.snippets.init(); }); }); },“代碼段”); StackExchange.ready(function(){ var channelOptions = { 標籤:“” .split(“”), id:“ 1” }; initTagRenderer(“”。split(“”),“” .split(“”),channelOptions); StackExchange.using(“ externalEditor”,function(){ //如果啟用了摘要,則必須在摘要後觸發編輯器 如果(StackExchange.settings.snippets.snippetsEnabled){ StackExchange.using(“ snippets”,function(){ createEditor(); }); } 其他{ createEditor(); } }); 函數createEditor(){ StackExchange.prepareEditor({ useStacksEditor:否, heartbeatType:“答案”, autoActivateHeartbeat:否, convertImagesToLinks:是, noModals:是的, showLowRepImageUploadWarning:是的, 聲望:ToPostImages:10, bindNavPrevention:正確, 後綴:“”, imageUploader:{ brandingHtml:“採用\ u003ca href = \“ https://imgur.com/ \” \ u003e \ u003csvg class = \“ svg-icon \” width = \“ 50 \” height = \“ 18 \” viewBox = \“ 0 0 50 18 \” fill = \“ none \” xmlns = \“ http://www.w3.org/2000/svg \” \ u003e \ u003cpath d = \“ M46.1709 9.17788C46.1709 8.26454 46.2665 7.94324 47.1084 7.58816C47.4091 7.46349 47.7169 7.36433 48.0099 7.26993C48.9099 6.97997 49.672 6.73443 49.672 5.93063C49.672 5.22043 48.98324.61182 48.1414 4.61182C47.4335 4.61182 46.7256 4.91628 46.0943 5.50789C45.7307 4.9328 45.2525 4.66231 44.6595 4.66231C43.6264 4.66231 43.1481 5.28821 43.1481 6.59048V11.9512C43.1481 13.2535 43.6264 13.8962 44.6595 13.8962C45.6924 13.8962 / \ u003e \ u003cpath d = \“ M32.492 10.1419C32.492 12.6954 34.1182 14.0484 37.0451 14.0484C39.9723 14.0484 41.5985 12.6954 41.5985 10.1419V6.59049C41.5985 5.28821 41.1394 4.66232 40.1061 4.66232C39.0732 4.66232 38.5948 5.28821 .5948 10.8521 38.2696 11.5455 37.0451 11.5455C35.8209 11.5455 35.4954 10.8521 35.4954 9.60062V6.59049C35.4954 5.28821 35.0173 4.66232 34.0034 4.66232C32.9703 4.66232 32.492 5.28821 32.492 6.59049V10.1419Z \“ / \ u003e \ d-od-d \“ clip-rule = \” evenodd \“ d = \” M25.6622 17.6335C27.8049 17.6335 29.3739 16.9402 30.2537 15.6379C30.8468 14.7755 30.9615 13.5579 30.9615 11.9512V6.59049C30.9615 5.28821 30.4833 4.66231 29.4502 4.66231C28.9913 4.66231 28.4555 4.9497 8 28.1109 5.50789C27.499 4.86533 26.7335 4.56087 25.7005 4.56087C23.1369 4.56087 21.0134 6.57349 21.0134 9.27932C21.0134 11.9852 23.003 13.913 25.3754 13.913C26.5612 13.913 27.4607 13.4902 28.1109 12.6616C28.1109 12.7229 28.1161 12.7799 28.1212.8934 12.983C28.1301 14.4373 27.2502 15.2321 25.777 15.2321C24.8349 15.2321 24.1352 14.9821 23.5661 14.7787C23.176 14.6393 22.8472 14.5218 22.5437 14.5218C21.7977 14.5218 21.2429 15.0123 21.2429 15.6887C21.2429 16.7375 22.9072 17.6335 25.66224.1633 7。 7.09766 26.1024 7.09766C27.2119 7.09766 28.0918 7.94324 28.0918 9.27932C28.0918 10.6321 27.2311 11.5116 26.1024 11.5116C24.9737 11.5116 24.1317 10.6491 24.1317 9.27932Z \“ / \ u003e \ u003cpath d = \” M16.8045 11.9512C16.8637 13.25 13.8962C19.3298 13.8962 19.8079 13.2535 19.8079 11.9512V8.12928C19.8079 5.82936 18.4879 4.62866 16.4027 4.62866C15.1594 4.62866 14.279 4.98375 13.3609 5.88013C12.653 5.05154 11.6581 4.62866 10.3573 4.62866C9.34336 4.62866 8.57809 4.89931 7.9466 5.5079C7.58314 4.9328 7.10506 4.66232 6.51203 4.66232C5.47873 4.66232 5.00066 5.28821 5.00066 6.59049V11.9512C5.00066 13.2535 5.47873 13.8962 6.51203 13.8962C7.527.9 13.685 0232 7.58817 8.44431 6.91179 9.53458 6.91179C10.5104 6.91179 10.893 7.58817 10.893 8.94108V11.9512C10.893 13.2535 11.3711 13.8962 12.4044 13.8962C13.4375 13.8962 13.9157 13.2535 13.9157 11.9512V8.90741C13.9157 7.58817 6.3579 6.9479 8.45269 V11.9512Z \“ / \ u003e \ u003cpath d = \” M3.31675 6.59049C3.31675 5.28821 2.83866 4.66232 1.82471 4.66232C0.791758 4.66232 0.313354 5.28821 0.313354 6.59049V11.9512C0.313354 13.2535 0.791758 13.8962 3.32471 13.8962C2.81798 13.8962 3.31675 11.9512V6.59049Z \“ / \ u003e \ u003cpath d = \” M1.87209 0.400291C0.843612 0.400291 0 1.1159 0 1.98861C0 2.87869 0.822846 3.57676 1.87209 3.57676C2.90056 3.57676 3.7234 2.87869 3.7234 1.98861C3.7234 1.1159 2.90056 0.400291 1.87209 0.400291Z \“ fill = \”#1BB76E \“ / \ u003e \ u003c / svg \ u003e \ u003c / a \ u003e”, contentPolicyHtml:“根據\ u003ca href = \“ https://stackoverflow.com/help/licensing \” \ u003ecc by-sa \ u003c / a \ u003e \ u003ca href = \“ https://stackoverflow.com獲得許可的用戶貢獻/ legal / content-policy \“ \ u003e(內容策略)\ u003c / a \ u003e”, allowUrls:是 }, onDemand:是的, dispatchSelector:“。discard-answer” ,立即顯示MarkdownHelp:true,enableTables:true,enableSnippets:true }); } }); 感謝您為Stack Overflow提供答案! 請務必回答問題。提供詳細信息並分享您的研究! 但是要避免... 尋求幫助,澄清或回答其他答案。 根據意見發表聲明;用參考或個人經驗來備份它們。 要了解更多信息,請參閱有關編寫出色答案的提示。 草稿已保存 草稿丟棄 註冊或登錄 StackExchange.ready(function(){ StackExchange.helpers.onClickDraftSave('#login-link'); }); 使用Google註冊 使用Facebook註冊 使用電子郵件和密碼註冊 提交 以訪客身份發布 名稱 電子郵件 必需,但從未顯示 StackExchange.ready( 函數(){ StackExchange.openid.initPostLogin('。new-post-login','https%3a%2f%2fstackoverflow.com%2fquestions%2f43124775%2fwhy-python-3-6-1-throws-attributeerror-module-enum-has- no-attribute-intflag%23new-answer”,“ question_page”); } ); 以訪客身份發布 名稱 電子郵件 必需,但從未顯示 發表您的答案 丟棄 點擊“發布答案”,即表示您同意我們的服務條款,隱私政策和Cookie政策 不是您要找的答案?瀏覽標記為python python-3.x的其他問題,枚舉python-3.6 attributeerror或提出您自己的問題。